-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test(benchmarks): improve bechmarks to have complete performance data #326
test(benchmarks): improve bechmarks to have complete performance data #326
Conversation
- Added Sparse Merkle Tree to the benchmark suites to complete the available merkle tree implementations in zk-kit. - Added operation to the benchmark suites (proof generation, proof verification, update, delete - Changed the "imt.ts" name to "benchmark-merkle-trees.ts" - Added README.md documentation about the benchmark suite - Added log managment with winston library to handle any error produced during the benchmark withtout break the benchmark execution re privacy-scaling-explorations#311
Dear @sripwoud, I have made the changes and run the recommended yarn commands before commit, but I have received the error: Please give me some clues about how to solve it, I used node 20.17.0 and yarn 4.1.0, when I run yarn to install the dependencies the yarn.lock has been changed but I didn't include it to the commit because I thought that is not convenient. |
…alidation issues in GH remove package winston and to-hex libraries to fix validation issues in GH re privacy-scaling-explorations#311
Hello, I have already fixed the problems in validation of the PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Small requests for changes.
it would be nice to add a summary results table to the root README (and update the conclusion if necessary based on the analysis).
Eg https://gist.github.com/sripwoud/06a1602fe8dd41c72f39c317cd1676f5#file-summary-md
Added benchmarks summary tables for different sizes of samples and conclusion ideas re # 311
Co-authored-by: sripwoud <[email protected]>
Co-authored-by: sripwoud <[email protected]>
Co-authored-by: sripwoud <[email protected]>
Co-authored-by: sripwoud <[email protected]>
Co-authored-by: sripwoud <[email protected]>
…dex.ts Added winston to package.json and refactored index.ts to run the samples with a loop managed by an array re privacy-scaling-explorations#311
Co-authored-by: sripwoud <[email protected]>
Changed to initialize from -1 instead of 0 to fix the logic to start from the first samples element re privacy-scaling-explorations#311
…chmarks' into docs/merkel-tree-bechmarks
I have already took action in all the requested changes, please @sripwoud let me know how it looks |
@prodasl
is this solved, or do you still need help with this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nACK
One cannot install the deps with yarn
or run yarn scripts (like yarn benchmarks
) due to the lockfile's broken indentation.
|
Hi, @sripwoud, thanks for the support. Should I include the changes of yarn.lock or definitely it should not be part of the PR? (when I not included I got the mentioned problem YN0028) |
…n script Change the usage instructions of benchmarks from the npx command to use the exisiting script in the package.json re privacy-scaling-explorations#311
…chmarks' into docs/merkel-tree-bechmarks
…lidation Minimal change in the code to add an space to a instruction from prettier lib suggestion
after the run the yarn command in my local environment plus add the new dev dependency winston the yarn.lock have changed some lib versions and added winston re privacy-scaling-explorations#311
HI @sripwoud , Finally, I tried sharing the yarn.lock as it is in my local environment, sorry for all the trouble but I have not worked with those files before, all the checks in Github looks like are passed and all the change requests covered. Please let me know if it is ready. (thanks again) |
TLDR: you should commit any changes to yarn.lock every time you change deps in package.json If there are more changes in yarn.lock than strictly related to your PR it is okay and normal: it is due to yarn bumping deps automatically according to semantic versioning rules. In practice devs exceptionally review changes in yarn.lock because there are always so huge. Reviewing package.json changes is enough. But avoid modifying yarn.lock yourself. Stick to the yarn add/remove commands. If it happens that there a mismatch between the committed yarn.lock and package.json then you get the error: YN0028: The lockfile would have been modified by this install, which is explicitly forbidden. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tACK (successfully ran yarn benchmarks
locally)
Thanks @prodasl ! Nice job.
## Table of Contents | ||
|
||
- [Installation](#installation) | ||
- [Usage](#usage) | ||
- [Benchmark](#benchmark) | ||
- [Results](#results) | ||
- [Dependencies](#dependencies) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit:
nice but unnecessary.
GitHub web ui automatically adds a button to see the table of contents for all .md
files 😉
https://github.blog/changelog/2021-04-13-table-of-contents-support-in-markdown-files/
Description
Added the missing Sparse Merkle tree, the missing operations:
Added Sparse Merkle Tree to the benchmark suites to complete the available merkle tree implementations in zk-kit.
Added operation to the benchmark suites (proof generation, proof verification, update, delete
Changed the "imt.ts" name to "benchmark-merkle-trees.ts"
Added README.md documentation about the benchmark suite
Added log managment with winston library to handle any error produced during the benchmark withtout break the benchmark execution
Related Issue(s)
Closes #311
Other information
The results folder is present in gitignore then the results are not included in the pull request, but you can use the README.md instructions to generate it.
Checklist
It would be helpful to write a comparison of of all them, answering questions like